High end storage controllers, such as the International Business Machines Corporation (IBM®) Enterprise Storage Server® manage Input/Output (I/O) requests from networked hosts to one or more storage units, such as a direct access storage device (DASD), Redundant Array of Independent Disks (RAID Array), and Just a Bunch of Disks (JBOD). Storage controllers include one or more host bus adapters or interfaces to communicate with one or more hosts over a network and adapters or interfaces to communicate with the storage units.
Data integrity is a critical factor in large computer data systems. Consequently, backup systems have been developed and integrated into storage controller to prevent the loss of data in the event of various types of failures. Backup systems provided by IBM, known generally as “copy services”, include Peer-to-Peer Remote Copy, FlashCopy® and Extended Remote Copy and maintain a separate, consistent copy of customer data. As illustrated in FIG. 1, in a storage system 100, data generated by a host device 110 is transmitted to a primary storage unit 120 for storage on associated storage devices 130. A copy of the data is also transmitted, such as over a fibre channel network 140, and to a secondary storage unit 150 for storage on associated storage devices 160. Because of the flexibility of network interconnections, the primary and secondary units 120 and 150 may be physically located remote from the host 110. And, for additional data security, the primary and secondary units 120 and 150 may be (but need not be) physically located distant from each other, thereby reducing the likelihood of a single disaster simultaneously harming both the primary and secondary units 120 and 150. It will be appreciated that the primary and secondary units 120 and 150 may be the same physical unit, divided logically into two.
Due at least in part to the risk of a power loss or other comparable significant event while customer data is being copied to the secondary unit, the state of the copy services operation is stored in memory and updated as the copy services operation progresses. The state data (as well as other control information used internally by the storage controller), known as “metadata”, is periodically destaged from the memory to reserved areas of the customer storage devices 130. Preferably, the metadata is divided into tracks of, for example, 8 KB each. There may be as many as 2000 or more such tracks.
During an error handing routine or behavior (EHB), such as an internal microcode load (IML), following a power loss during a copy services operation or other comparable significant event, the metadata is staged from the storage device to the memory where it becomes available for the recovery operation. In a conventional EHB, other EHB activities must be paused while all of the metadata tracks are staged to memory. Only after all of the metadata has been staged may the EHB be completed and normal customer I/O operations resumed. Consequently, the requirement to stage all of the metadata tracks delays completion of the EHB and adversely impacts customer I/O.
Consequently a need remains for improving the performance of metadata recovery during EHB activities without adversely affecting customer operations.